package backtype.storm;

import java.util.Map;

import backtype.storm.generated.*;


public interface ILocalCluster {
    void submitTopology(String topologyName, Map conf, StormTopology topology) throws AlreadyAliveException,
            InvalidTopologyException;


    void submitTopologyWithOpts(String topologyName, Map conf, StormTopology topology,
            SubmitOptions submitOpts) throws AlreadyAliveException, InvalidTopologyException;


    void killTopology(String topologyName) throws NotAliveException;


    void killTopologyWithOpts(String name, KillOptions options) throws NotAliveException;


    void activate(String topologyName) throws NotAliveException;


    void deactivate(String topologyName) throws NotAliveException;


    void rebalance(String name, RebalanceOptions options) throws NotAliveException;


    void shutdown();


    String getTopologyConf(String id);


    StormTopology getTopology(String id);


    ClusterSummary getClusterInfo();


    TopologyInfo getTopologyInfo(String id);


    Map getState();
}
